/*-------------------------------------------------------------------------
 *
 * bufmask.h
 *	  缓冲区掩码例程的定义，用于掩盖 WAL 生成和应用时可能
 *	  不同的页面中的某些位。这实际上是每个单独 rmgr 的工作，
 *	  但我们通过提供一些通用例程来简化处理多个 rmgr 的情况。
 *
 * Portions Copyright (c) 2016-2022, PostgreSQL Global Development Group
 *
 * src/include/access/bufmask.h
 *
 *-------------------------------------------------------------------------
 */

#ifndef BUFMASK_H
#define BUFMASK_H

#include "storage/block.h"
#include "storage/bufmgr.h"

/* 用于一致地掩码页面的标记 */
#define MASK_MARKER		0

extern void mask_page_lsn_and_checksum(Page page);
extern void mask_page_hint_bits(Page page);
extern void mask_unused_space(Page page);
extern void mask_lp_flags(Page page);
extern void mask_page_content(Page page);

#endif
